# 使用官方 PHP 7.4 FPM 镜像作为基础镜像 [[1]]
FROM php:7.4-fpm

# 安装composer
RUN php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" \
&& php composer-setup.php \
&& php -r "unlink('composer-setup.php');" \
&& mv composer.phar /usr/local/bin/composer

# 安装系统依赖和 PHP 扩展
RUN apt-get update && apt-get install -y \
    libzip-dev \
    zip \
    unzip \
    libfreetype6-dev \
    libjpeg62-turbo-dev \
    libpng-dev \
    libxml2-dev \
    libonig-dev \
    libxslt-dev \
    libmagickwand-dev --no-install-recommends \
    && pecl install imagick \
    && docker-php-ext-enable imagick \
    && docker-php-ext-configure gd --with-freetype --with-jpeg \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install bcmath \
    && docker-php-ext-install exif \
    && docker-php-ext-install gettext \
    && docker-php-ext-install intl \
    && docker-php-ext-install mysqli \
    && docker-php-ext-install pcntl \
    && docker-php-ext-install pdo_mysql \
    && docker-php-ext-install zip \
    && docker-php-ext-install soap \
    && docker-php-ext-install sockets \
    && docker-php-ext-install sysvsem \
    && docker-php-ext-install xsl \
    && docker-php-ext-install xmlrpc \
    && pecl install redis \
    && docker-php-ext-enable redis \
    && docker-php-ext-install shmop \
    && docker-php-ext-install opcache

# 建议将应用代码复制到容器中（假设当前目录为项目根目录）
COPY . /var/www/html

# 设置工作目录为 /var/www/html [[1, 12]]
WORKDIR /var/www/html

# 暴露 FPM 默认端口 9000 [[4]]
EXPOSE 9000

# 使用默认的 php-fpm 启动命令 
CMD ["php-fpm"]